//购物车与订单
const express = require('express');
const pool = require('../pool');
const router = express.Router()
const Res = require('../utils/Response');

//////////////////////购物车操作开始//////////
//添加商品到购物车
router.post('/cart-add',(req,res,next)=>{
    let obj = req.body
    let { id,serve_id,user_id,start_time,serve_date,serve_addr } = obj
    pool.query('INSERT INTO user_cart (id, serve_id, user_id, start_time, serve_date, serve_addr) VALUES (?,?,?,?,?,?)',[id,serve_id,user_id,start_time,serve_date,serve_addr],(err,r)=>{
        if(err){
            return next(err)
        }
        console.log(r);
        res.send(Res.ok('添加购物车成功'))
    })
})

//根据用户id查询购物车里的订单
router.get('/cart',(req,res,next)=>{
    let obj = req.query
    pool.query('select * from user_cart where user_id = ?',[obj.uid],(err,r)=>{
        if(err){
            return next(err)
        }
        res.send(Res.ok('用户的购物车',r))
    })
})
//修改购物车地址
router.put('/cart-addr',(req,res,next)=>{
    let obj = req.body
    pool.query('update user_cart set serve_addr=? where id=?',[obj.addr,obj.cid],((err,r)=>{
        if(err){
            return next(err)
        }
        console.log(r);
        if(r.changedRows == 0){
            res.send(Res.err('地址修改失败,请提交有效的id'))
        }else{
            res.send(Res.ok('地址修改成功'))
        }
    }))
})
//删除购物车订单
router.delete('cart-del',(req,res,next)=>{
    let obj = req.body
    pool.query('delete from user_cart where id = ?',[obj.cid],(err,r)=>{
        if(err){
            return next(err)
        }
        if(r.affectedRows == 0){
            res.send(Res.err('删除失败,请提供有效的id'))
        }else{
            res.send(Res.ok('删除成功'))
        }
    })
})
///////////////////////////////购物车操作结束///////

/////神圣分离者//////

////////////////////////////订单操作开始///////////
//付款成功后添加到订单
router.post('/order-add',(req,res,next)=>{
    let obj = req.body
    let { oid,serve_id,user_id,start_time,serve_date,serve_addr,is_comment } = obj
    pool.query('insert into user_order (oid,serve_id,user_id,start_time,serve_date,serve_addr,is_comment) values (?,?,?,?,?,?,?)',[oid,serve_id,user_id,start_time,serve_date,serve_addr,is_comment],(err,r)=>{
        if(err){
            return next(err)
        }
        console.log(r);
        res.send(Res.ok('添加订单成功'))
    })
})
//根据用户id查询订单
router.get('/order',(req,res,next)=>{
    let obj = req.query
    pool.query('select * from user_order where user_id = ?',[obj.uid],(err,r)=>{
        if(err){
            return next(err)
        }
        res.send(Res.ok('用户的订单',r))
    })
})
///////////////////////////订单操作结束/////////////

module.exports = router